package com.etd.base.domain.inf;

import java.util.List;

import com.etd.workflow.domin.VOHistoric;

/**
 * 
 * 基于工作流的业务类接口，定义必须实现的业务流基本方法
 * @author : jackson wang
 * @Date   : 2015年10月8日 下午10:01:07
 * @version: 1.0
 * 
 */
public interface BaseFlowDomainInf extends BaseDomainInf{

	/*
	 * 流程启动用户信息
	 */
	Long getUserid();
	
	void setUserid(Long userid);
	
	/*
	 * 流程启动用户姓名
	 */
	String getUserName();
	
	void setUserName(String username);
	
	
	/*
	 * 获取流程编码
	 */
	String getFlowid();

	/*
	 * 设置流程编码
	 */
	void setFlowid(String flowid);
	
	/*
	 * 获取流程实例ID
	 */
	String getFlowInstId();
	
	/*
	 * 设置流程实例ID
	 */
	void setFlowInstId(String flowInstId);
	
	
	/*
	 * 设置、获取流程任务节点id
	 */
	String getFlowTaskId();
	
	void setFlowTaskId(String taskid);
	/*
	 * 获取流程名称
	 */
	String getFlowName();
	
	/*
	 * 设置流程名称
	 */
	void setFlowName(String name);
	
	/*
	 * 获取业务流当前状态
	 */
	String getFlowState();
	
	/*
	 * 设置业务流当前状态
	 */
	void setFlowState(String state);
	
	/*
	 * 获取部门名称
	 */
	String getDeptName();
	
	/*
	 * 设置部门名称
	 */
	void setDeptName (String deptname);
	
	/*
	 * 获取部门编码
	 */
	Long getDeptid();
	
	/*
	 * 设置部门编码
	 */
	void setDeptid(Long deptid);
	
	/*
	 * 获取全路径业务编码
	 */
	String getFullBizcode();
	
	/*
	 * 设置全路径业务编码
	 */
	void setFullBizcode(String bizcode);
	
	/*
	 * 流程执行记录
	 */
	List<VOHistoric> getHistorics();
	
	void setHistorics(List<VOHistoric> historics);
	
	/**
	 * 获取流程执行状态. 1:执行中; 0:已结束; -1:已删除
	 * @return
	 */
	public Long getFlowStatus();

	/**
	 * 设置流程执行状态
	 * @param flowStatus	3:已签收,2:未签收,1:执行中; 0:已结束; -1:已删除
	 */
	public void setFlowStatus(Long flowStatus) ;
	
	
	/**
	 * 获取任务节点代码
	 * @return
	 */
	public String getTask_def_key() ;

	/**
	 * 设置任务节点代码
	 * @param task_def_key
	 */
	public void setTask_def_key(String task_def_key);

}